<!doctype html>
<html>
  <head>
    <title>Drawing - an alternative to Paint for Linux</title>
    <meta charset="utf-8" />
    <meta name="viewport" content="initial-scale=1.0,width=device-width" />
    <meta name="description"
          content="Drawing is a simple image editor for Linux, inspired by Paint" />
    <link rel="stylesheet" href="example.css" />
    <link rel="icon" type="image/png" href="favicon.png" />
  </head>

  <body>
    <header>
      <div class="header-box">
        <div class="responsive-row">
          <div class="col66">
            <h1>Drawing</h1>
            <p>Simple image editor for Linux</p>
            <hr />
            <div class="responsive-row nav-row">
              <div class="col33 nav-item primary-nav-item">
                <a href="./gallery.html">More screenshots</a>
              </div>
              <div class="col33 nav-item">
                <a href="https://github.com/maoschanz/drawing">Source code (GPL3)</a>
              </div>
              <div class="col33 nav-item">
                <a href="https://paypal.me/maoschannz">Paypal donations</a>
              </div>
            </div>
          </div>
          <div class="col33">
            <img
              class="header-icon"
              src="https://raw.githubusercontent.com/maoschanz/drawing/master/data/icons/hicolor/128x128/apps/com.github.maoschanz.drawing.png"
              alt="icon" />
          </div>
        </div>
      </div>
    </header>
    <main itemscope itemtype="https://schema.org/SoftwareApplication">

      <div class="responsive-row">
        <div class="col33 description">
          <p itemprop="abstract">
            This free basic raster
            <span itemprop="applicationSubCategory">image editor</span>
            is similar to Microsoft Paint, but aiming at the
            <span itemprop="applicationSuite">GNOME</span> desktop.
          </p>
          <p class="description">PNG, JPEG and BMP files are supported.</p>

          <a href="https://circle.gnome.org/"
             class="limited-image">
            <img class="limited-image"
                 src="https://gitlab.gnome.org/Teams/Circle/-/raw/master/assets/button/circle-button-i.svg"
                 title="Drawing is a 'GNOME Circle' app!"
                 alt="Drawing is a 'GNOME Circle' app!" />
          </a>
        </div>
        <div class="col66">
          <!-- Main screenshot -->
          <p>
            <img alt="screenshot" class="zoomable-img-100"
                 src="screenshots/1.0/gnome_menu.png"
                 itemprop="screenshot" />
          </p>
        </div>
      </div>

      <p class="description">
        The app works on any GNU-<span itemprop="operatingSystem">Linux</span>
        system regardless of the desktop environment:
        more traditional design user interfaces are available too, as well as an
        elementaryOS layout. The app should also be compatible with GNU-Linux
        smartphones.
      </p>


      <!-- Smaller screenshots -->
      <div class="responsive-row">
        <div class="col33">
          <img alt="screenshot" src="screenshots/1.0/gnome_selection.png" class="zoomable-img-100" />
        </div>
        <div class="col33">
          <img alt="screenshot" src="screenshots/1.0/gnome_new.png" class="zoomable-img-100" />
        </div>
        <div class="col33">
          <img alt="screenshot" src="screenshots/1.0/gnome_tools_preview.png" class="zoomable-img-100" />
        </div>
      </div>
      <p class="description">
        For more screenshots, see the <a href="./gallery.html">gallery</a>.
      </p>

      <h2><a id="installation"></a>Installation</h2><!-- ******************* -->

       <!-- (no-break space) -->
      <!-- It would look better if in a div, but that would break the CSS, -->
      <!-- which relies on the "~" combinator. -->
      <input type="radio" name="tabs" id="tab1" checked="yes" />
      <label for="tab1"><h4>Flatpak</h4></label>

      <input type="radio" name="tabs" id="tab2" />
      <label for="tab2"><h4>Native packages</h4></label>

      <input type="radio" name="tabs" id="tab3" />
      <label for="tab3"><h4>Other methods</h4></label>

      <div class="tab content1">
        <p>
          The <b>recommended</b> way to install the most recent version of
          Drawing is to use <code>flatpak</code>:
        </p>
        <p>
          <a itemprop="downloadUrl"
             href="https://flathub.org/apps/details/com.github.maoschanz.drawing"
             class="limited-image">
            <img src="https://flathub.org/assets/badges/flathub-badge-en.png"
                 class="limited-image"
                 alt="Install it from Flathub"
                 title="Install it from Flathub" />
            <p>(version <span itemprop="softwareVersion">1.0.1</span>)</p>
          </a>
        </p>
        <p>
          Permissions required:
          <span itemprop="permissions">ipc/x11/wayland</span>
        </p>
      </div>

      <div class="tab content2">
        <p>
          The app is also available as native packages in the repositories of
          the following distributions:
        </p>
        <p>
          <a href="https://repology.org/project/drawing/versions">
            <img
              src="https://repology.org/badge/vertical-allrepos/drawing.svg"
              alt="Packaging status" />
          </a>
        </p>
        <p>
          You can use the package manager of your distribution to install the
          package <code>drawing</code>.
        </p>
      </div>

      <div class="tab content3">
        <p>Alternative installation methods for Ubuntu:</p>
        <ul>
          <li>
            <a href="https://launchpad.net/~cartes/+archive/ubuntu/drawing/">
              <b>PPA repository (version 1.0.1)</b>
            </a>
          </li>
          <li>
            <!-- <a href="https://www.youtube.com/watch?v=dQw4w9WgXcQ" -->
            <a href="https://snapcraft.io/drawing"
               title="is the code even packaged from a tag?">
              Snap package (unknown version?)
            </a>
          </li>
        </ul>
        <hr />
        <p>
          <a href="https://gitlab.com/src_prepare/src_prepare-overlay/-/tree/master/media-gfx/drawing">
            Gentoo package
          </a>
          from an external overlay
        </p>
      </div>

      <br />

      <h2><a id="news"></a>What's new</h2><!-- ***************************** -->

      <details open="open">
        <summary>New features in version 1.0.2</summary>
        <ul itemprop="releaseNotes">
          <li>fix the default value of the text background option</li>
          <li>fix a scenario where saving without transparency would consistently fail</li>
          <li>automatically reload the picture after saving</li>
          <li>mitigate a bug concerning the initial state of the "filters" tool when "blur" is selected</li>
          <li>change the keyboard shortcuts to switch tabs</li>
          <li>remove from the highlighter the (ineffective) UI to change the active cairo operator</li>
          <li>change the UI of the selection tools to improve readability of various items</li>
          <li>fix typos in the user help manual</li>
        </ul>
      </details>

      <details>
        <summary>New features in versions 1.0.0 to 1.0.1</summary>

        <p>Drawing 1.0.1</p>
        <ul>
          <li>enable the highlighter by default</li>
          <li>less intrusive "what's new" message dialog</li>
          <li>non-linear zooming speed profile (to zoom faster when using extreme values)</li>
          <li>slower scrolling speed to have a better precision with higher zoom levels</li>
          <li>require itstool as a dependency even though it's some useless bloat</li>
          <li>fix the adaptativity of the elementaryOS layout</li>
          <li>better keep the image centered on the mouse pointer when changing the zoom</li>
          <li>avoid —again— insane attempts to open the binary as an image</li>
        </ul>

        <p>Drawing 1.0.0</p>
        <ul>
          <li>enable tools with "alt+letter" mnemonics</li>
          <li>larger sidebar items, where the selected tool is easier to see</li>
          <li>new "skew" tool</li>
          <li>enable or disable specific tools options with the [shift] or [alt] keyboard modifiers</li>
          <li>show more numerous, more dynamic, more contextual help tips as the window's subtitle</li>
          <li>display cursor coordinates and other related data when pressing the [ctrl] keyboard modifier</li>
          <li>dynamically change the label of the "options" submenu in the menu-bar, to increase its discoverability</li>
          <li>scale tool option to set the size in percentage</li>
          <li>suggest to "apply & save" when trying to save while an operation is unapplied</li>
          <li>highlighter option to straighten the line, so it better follows the underlying text</li>
          <li>improvements to the "points" tool's numbers readability</li>
          <li>suggest to "apply & deselect" when trying to save while the selection is active</li>
          <li>more precise tools for tiny modifications required by pixel-art</li>
          <li>display pixels sharply when zooming deeper than 400%</li>
          <li>hide information messages after 4 seconds if they're not that useful</li>
          <li>disable the 'reload image from the disk' action if the image has never been saved</li>
          <li>new 'reset the canvas' action (ctrl+backspace)</li>
          <li>warn the user if they're opening an already opened image</li>
          <li>suggest to reload the picture if it has changed on the disk</li>
          <li>artificially limited framerate to avoid overloading the CPU</li>
          <li>menu item and action to change the theme variant preference</li>
          <li>toggle the menubar with ctrl+f2</li>
          <li>update the user help manual</li>
          <li>shorter appdata summary, to comply with guidelines</li>
          <li>update several translations</li>
        </ul>
      </details>

      <details>
        <summary>New features in versions 0.8.0 to 0.8.5</summary>

        <p>Drawing 0.8.5</p>
        <ul>
          <li>text tool option for a thicker outline</li>
          <li>visual feedback when the user moves the minimap preview</li>
        </ul>

        <p>Drawing 0.8.4</p>
        <ul>
          <li>option to disable anti-aliasing with the text tool</li>
          <li>if "undo" is pressed several times in a short period, recompute only once</li>
          <li>disable the 'reload image from the disk' action if it has never been saved</li>
        </ul>

        <p>Drawing 0.8.3</p>
        <ul>
          <li>draw a wider outline to the free selection when the image is zoomed out</li>
          <li>don't try to open the app binary as an image when running outside of a flatpak sandbox</li>
          <li>fix incorrectly huge height of the selection after rotating it</li>
        </ul>

        <p>Drawing 0.8.2</p>
        <ul>
          <li>refactoring of the optionsbars (bottom panes) of the transform tools</li>
          <li>add a "lock line orientation" option to the line tool</li>
          <li>fix shift+f10 action when using a selection tool on mobile</li>
          <li>add an outline to the canvas, so its limit are always understandable</li>
          <li>fix the `-c` option when using Wayland</li>
          <li>lock image proportions by default when scaling with the numerical inputs</li>
          <li>fix an unexpected way the "crop" tool could expand the selection</li>
          <li>preview correctly the areas created by a transform tool before applying a change</li>
          <li>fix when the app starts with a transform tool, and this tool is immediately used and applied</li>
          <li>compatibility with older distributions (Ubuntu 18.04 LTS)</li>
        </ul>

        <p>Drawing 0.8.1</p>
        <ul>
          <li>add an action "selection > define as current image"</li>
          <li>fix how the canvas was ERASED if it was being cropped on one side but expanded on the other side</li>
          <li>add an action "selection > expand image to fit [the size of the selection]"</li>
          <li>add a several ways of censoring information as an option to the eraser tool</li>
          <li>preference to select a theme variant (thanks to @alexislozano)</li>
          <li>add "nib direction" option to the calligraphic nib</li>
          <li>better pre-select the currently used font in the font chooser dialog</li>
          <li>add optional outline to the pencil, line, and curve tools</li>
          <li>better looking outline for the "insert text" tool</li>
          <li>install files in /usr instead of /usr/local</li>
        </ul>

        <p>Drawing 0.8.0</p>
        <ul>
          <li>new, richer, more readable bottom pane for the selection tool</li>
          <li>add a "replace with" option to the eraser tool</li>
          <li>use an adequate layout on LXDE or LXQt</li>
          <li>force the release notes down users' throat</li>
          <li>rewrite the help manual to better force it down users' throat</li>
          <li>add color application mode support to the "shape" tool</li>
          <li>persist the text background style and the shape filling style options</li>
          <li>brush supporting pressure-sensitive input</li>
          <li>hairy brush supporting pressure-sensitive input</li>
          <li>airbrush supporting pressure-sensitive input</li>
          <li>calligraphic nib supporting pressure-sensitive input</li>
          <li>fix unexpected "jumps" when unselecting a selection that was defined by an undo</li>
          <li>improve the fullscreen mode, with a way to toggle the tools list</li>
          <li>add an "increase contrast" filter</li>
          <li>deleting the selection can now leave something else than transparency</li>
          <li>option to exclude the color left under the selection from the selection itself</li>
          <li>rewrite the UI for changing the color application mode</li>
          <li>remove the cool but deprecated GNOME Shell app menu</li>
          <li>improve flatpak CI</li>
        </ul>
      </details>

      <details>
        <summary>New features in versions 0.6.0 to 0.6.5</summary>

        <p>Drawing 0.6.5</p>
        <ul>
          <li>fix unexplained regression of bottom panes responsiveness</li>
          <li>mitigation of the "very quick series of ctrl+b" bug</li>
          <li>disable importing or opening an image using drag-and-drop with flatpak (it was broken)</li>
          <li>fix printing</li>
          <li>more pertinent movements of the view when holding and moving the middle-click</li>
        </ul>

        <p>Drawing 0.6.4</p>
        <ul>
          <li>add more keyboard shortcuts</li>
          <li>slightly better "erase and replace" algo for the paint tool</li>
          <li>better handle attempts to open webp images</li>
          <li>better handle attempts to open incorrect file types</li>
          <li>remember the value of the antialiasing option</li>
        </ul>

        <p>Drawing 0.6.3</p>
        <ul>
          <li>use submenus for the "tools" menu in the menubar</li>
          <li>fix arrows' heads when the line was semi-transparent</li>
          <li>fix arrows' heads with specific angles (#286)</li>
          <li>fix arrows' heads when the line had a square end</li>
          <li>add option for double-ended arrows</li>
          <li>add more options for dashed lines</li>
          <li>support for older distributions (pygobject older than 3.30)</li>
        </ul>

        <p>Drawing 0.6.2</p>
        <ul>
          <li>add keyboard shortcuts for increasing and decreasing the tool width</li>
          <li>ensure all features are available with all layouts (e.g. "reload" with Cinnamon and eOS)</li>
          <li>suggest to reload when the file has been saved without transparency</li>
          <li>new 'copy to clipboard' action</li>
          <li>new "paint over the entire image" option to the paint tool</li>
          <li>fix Debian Buster (and PureOS Amber) support</li>
          <li>add option for the 'highlighter' tool to highlight on dark background</li>
        </ul>

        <p>Drawing 0.6.1</p>
        <ul>
          <li>new 'save without transparency' action, that works with PNG</li>
          <li>add 'initial color' as a replacement for transparent pixels</li>
          <li>fix a bug in the 'rotate' tool that occurred when the selection was flipped before being rotated</li>
          <li>add the additional tool 'points', to help captioning</li>
          <li>update the user help manual</li>
        </ul>

        <p>Drawing 0.6.0</p>
        <ul>
          <li>remove the "windows" menu from the menubar</li>
          <li>refactor bottom panes management to allow several tools to share the same pane</li>
          <li>rectangle selection, freehand selection, and color selection, are now distinct tools</li>
          <li>the 'rotate' tool now handles horizontal or vertical flipping</li>
          <li>the 'rotate' tool now supports any angle when rotationg the selection</li>
          <li>tools producing shapes (circle, rectangle, polygon, …) are merged into a single 'shape' tool</li>
          <li>"close shape" action for the 'shape' tool</li>
          <li>"close selection" action for the 'free selection' tool</li>
          <li>replace the 'saturate' tool by a new 'filters' tool</li>
          <li>add several types of blur to 'filters'</li>
          <li>add color inversion, pixelization, partial transparency to 'filters'</li>
          <li>add "additional tools" section to the preferences window</li>
          <li>add specialized types of pencils (eraser, highlighter) as optional tools</li>
          <li>a fullscreen mode is now available</li>
          <li>zoom in (or out) using the minimap, the touch gestures, the mouse wheel, or keyboard shortcuts</li>
          <li>move the "color application mode" selection to the colors menus/popovers</li>
          <li>add "antialiasing" option to several tools</li>
          <li>fix how the canvas is displayed on HiDPI screens</li>
          <li>warn the user when they try to save despite the current operation not being applied</li>
          <li>rewrite the user help manual</li>
        </ul>
      </details>
      <!-- It's not useful to do 0.4 or 0.2, no one uses that -->
      <br />

      <!-- Other useful but not sexy infos -->
      <h2><a id="tools"></a>Tools</h2><!-- ********************************* -->
      <div class="responsive-row" itemprop="featureList">

        <div class="col50">
          <p>Tools to <b>draw</b>:</p>
          <ul>
            <li>Pencil</li>
            <li>Eraser*</li>
            <li>Highlighter*</li>
            <li>Insert text</li>
            <li>Points*</li>
            <li>Shape
              <ul>
                <li>Rectangle</li>
                <li>Rounded rectangle</li>
                <li>Circle</li>
                <li>Oval</li>
                <li>Polygon</li>
                <li>Free shape</li>
              </ul>
            </li>
            <li>Line &amp; arrow</li>
            <li>Curve</li>
            <li>Color picker*</li>
            <li>Paint*</li>
          </ul>

          <p>*these tools are disabled by default.</p>
        </div>

        <div class="col50">
          <p>Tools to <b>select</b> a part of the image:</p>
          <ul>
            <li>Rectangle selection</li>
            <li>Free selection</li>
            <li>Adjacent color selection*</li>
          </ul>

          <p>Tools to <b>transform</b> the canvas or the selected area:</p>
          <ul>
            <li>Crop</li>
            <li>Scale</li>
            <li>Skew*</li>
            <li>Rotate &amp; flip</li>
            <li>Filters
              <ul>
                <li>Blur</li>
                <li>Pixelization</li>
                <li>Saturate &amp; desaturate</li>
                <li>Add transparency</li>
                <li>Invert colors</li>
              </ul>
            </li>
          </ul>

          <p>(last update of this list: version 1.0.1)</p>
        </div>

      </div>

      <h2><a id="translations"></a>Available languages</h2><!-- ************ -->
      <div class="responsive-row">
        <div class="col50">
          <ul itemprop="countriesSupported">
            <li>Basque</li>
            <li>Brazilian portuguese</li>
            <li>Castillan</li>
            <li>Croatian</li>
            <li>Chinese (simplified)</li>
            <li>Chinese (traditional)</li>
            <li>Czech</li>
            <li>Danish</li>
            <li>Dutch</li>
            <li>English</li>
            <li>Finnish</li>
            <li>French</li>
            <li>German</li>
            <li>Hebrew</li>
            <li>Hindi</li>
            <li>Hungarian</li>
            <li>Italian</li>
            <li>Japanese</li>
            <li>Korean</li>
            <li>Polish</li>
            <li>Russian</li>
            <li>Swedish</li>
            <li>Turkish</li>
          </ul>
        </div>
        <div class="col50">
          <p>
            Credits for these translations are available
            <a href="https://github.com/maoschanz/drawing#available-languages">
            here</a> and in the app's "about" dialog.
          </p>
          <p>
            If the translation in your language is missing or incomplete, your
            contribution is welcome!
          </p>
        </div>
      </div>

    </main>
    <footer>
      <!--it's a footer but it has the same css as the header-->
      <div class="header-box">
        <div class="responsive-row nav-row">
          <div class="col33 nav-item primary-nav-item">
            <a href="./gallery.html">More screenshots</a>
          </div>
          <div class="col33 nav-item">
            <a href="https://github.com/maoschanz/drawing">Source code (GPL3)</a>
          </div>
          <div class="col33 nav-item">
            <a href="https://paypal.me/maoschannz">Paypal donations</a>
          </div>
        </div>
      </div>
    </footer>

  </body>
</html>

